﻿using System;
using System.Collections.Generic;

namespace BattleThis.Core.Movement
{
	public interface IMoveActionService
	{
		/// <summary>
		/// Gets the possible range of a unit on this map.
		/// </summary>
		/// <param name="unit">The unit to get the range from.</param>
		/// <returns></returns>
		IEnumerable<Position> GetRange( Unit unit );

		/// <summary>
		/// Moves the unit on the specified field to the specified position.
		/// </summary>
		/// <param name="selected">The unit on the selected field.</param>
		/// <param name="to">The position to move.</param>
		void Move( Field selected, Position to );
	}
}
